8dbdb4949bf44e059023176c6439030aa54faef7,maven-doap-plugin/src/main/java/org/apache/maven/plugin/doap/DoapMojo.java,DoapMojo,writeLicenses,#XMLWriter#MavenProject#,1335

Before Change


     */
    private void writeLicenses( XMLWriter writer, MavenProject project )
    {
        if ( project.getLicenses() == null || project.getLicenses().isEmpty() )
        {
            messages.addMessage( new String[] { "project", "licenses" }, null, UserMessages.REQUIRED_BY_ASF_OR_RECOMMENDED );
            return;
        }

        DoapUtil.writeComment( writer, "The URI of the license the software is distributed under." );
        // TODO: how to map to usefulinc site, or if this is necessary, the OSI page might
        // be more appropriate.
        @SuppressWarnings( "unchecked" )

After Change


     * @param project the Maven project, not null
     * @see <a href="http://usefulinc.com/ns/doap#license">http://usefulinc.com/ns/doap#license</a>
     */
    private void writeLicenses( XMLWriter writer, MavenProject project )
    {
        String license = DoapUtil.interpolate( doapOptions.getLicense(), project, settings );
        if ( StringUtils.isEmpty( license ) )
        {
            boolean added = false;
            @SuppressWarnings( "unchecked" )
            List<License> licenses = project.getLicenses();
            if ( licenses.size() > 1 )
            {
                for ( int i = 1; i < licenses.size(); i++ )
                {
                    if ( StringUtils.isEmpty( licenses.get( i ).getUrl() ) )
                    {
                        continue;
                    }

                    String licenseUrl = licenses.get( i ).getUrl().trim();
                    try
                    {
                        new URL( licenseUrl );

                        DoapUtil.writeRdfResourceElement( writer, doapOptions.getXmlnsPrefix(), "license", licenseUrl );
                        added = true;
                    }
                    catch ( MalformedURLException e )
                    {
                        messages.addMessage( new String[] { "project", "licenses", "license", "url" }, licenseUrl,
                                             UserMessages.INVALID_URL );
                    }
                }
            }

            if ( !added )
            {
                messages.addMessage( new String[] { "doapOptions", "license" }, null,
                                     UserMessages.REQUIRED_BY_ASF_OR_RECOMMENDED );
            }
            return;
        }

        try
        {
            new URL( license );

            DoapUtil.writeComment( writer, "The URI of the license the software is distributed under." );
            DoapUtil.writeRdfResourceElement( writer, doapOptions.getXmlnsPrefix(), "license", license );
        }
        catch ( MalformedURLException e )
        {
            messages.addMessage( new String[] { "doapOptions", "license" }, license, UserMessages.INVALID_URL );
        }
    }